﻿using FluentAssertions;

using LambdaGp.Core;

using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace LambdaGp.Tests
{
    [TestClass]
    public class PopulationTests
    {
        [TestMethod]
        public void Can_create_Population()
        {
            new Population();
        }

        [TestMethod]
        public void Can_create_Population_from_Factory()
        {
            Population population = TestPopulationFactory.CreatePopulation();
            population.Should().NotBeNull();
            population.PopulationSize.Should().BeGreaterOrEqualTo(50);
        }

        [TestMethod]
        public void Population_can_run()
        {
            Population population = TestPopulationFactory.CreatePopulation();
            population.RunGeneration();
            population.RunGeneration();
        }
    }
}
